<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>大事件-后台首页</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css" />
    <link rel="stylesheet" href="css/reset.css" />
    <link rel="stylesheet" href="css/iconfont.css" />
    <link rel="stylesheet" href="css/main.css" />
    <script src="./libs/jquery-1.12.4.min.js"></script>
    <!-- 导入bootstrap的js文件 -->
    <script src="./libs/bootstrap/js/bootstrap.min.js"></script>
  </head>

  <body>
    <div class="sider">
      <a href="#" class="logo"><img src="images/logo02.png" alt="logo"/></a>
      <div class="user_info">
        <img src="images/2.jpg" alt="person" />
        <span>欢迎&nbsp;&nbsp;李思思</span>
        <b>管理员</b>
      </div>
      <!-- 左侧导航栏 -->
      <div class="menu">
        <div class="level01 active">
          <a href="./main_count.html" target="main_ifarme"
            ><i class="iconfont icon-yidiandiantubiao04"></i
            ><span>首页</span></a
          >
        </div>

        <div class="level01">
          <a href="./article_list.html" target="main_ifarme"
            ><i class="iconfont icon-icon-article"></i><span>文章管理</span
            ><b class="iconfont icon-arrowdownl"></b
          ></a>
        </div>

        <ul class="level02">
          <li>
            <a href="./article_list.html" target="main_ifarme"
              ><i class="iconfont icon-previewright"></i
              ><span>文章列表</span></a
            >
          </li>
          <li>
            <a href="./article_release.html" target="main_ifarme"
              ><i class="iconfont icon-previewright"></i
              ><span>发表文章</span></a
            >
          </li>
          <li>
            <a href="./article_category.html" target="main_ifarme"
              ><i class="iconfont icon-previewright"></i
              ><span>文章类别管理</span></a
            >
          </li>
        </ul>

        <div class="level01">
          <a href="./comment_list.html" target="main_ifarme"
            ><i class="iconfont icon-comment"></i><span>评论管理</span></a
          >
        </div>
        <div class="level01" id="user">
          <a href="./user.html" target="main_ifarme"
            ><i class="iconfont icon-user"></i><span>个人中心</span></a
          >
        </div>
      </div>
      <!-- 顶部栏 -->
      <div class="header_bar">
        <div class="user_center_link">
          <a href="./user.html" target="main_frame">个人中心</a>
          <img src="images/2.jpg" alt="person" />
          <a href="javascript:void(0)" class="logout"
            ><i class="iconfont icon-tuichu"></i> 退出</a
          >
        </div>
      </div>
      <!-- 右侧主体内容 -->
      <div class="main" id="main_body">
        <!-- 准备嵌套容器 -->
        <iframe
          src="./main_count.html"
          style="width: 100%;height: 100%;"
          name="main_ifarme"
        ></iframe>
      </div>
    </div>
  </body>
</html>
<script>
  $(function () {
    // 0. 设置ajax的全局属性,可以给当前页面所有的ajax请求共同使用
    // $.ajaxSetup({
    //   // 所有ajax请求发送之前,都会执行以下的函数
    //   beforeSend: function (xhr) {
    //     // 利用请求头携带token数据
    //     xhr.setRequestHeader('Authorization', localStorage.getItem('token'))
    //   }
    // })
    // 但是: 以上的代码真的可以一劳永逸嘛?
    // 思考问题: 应该如何处理,才可以让其他的页面也能使用以上的代码???

    // 1. 发起ajax请求,获得用户的基本信息
    // 携带token数据,发起ajax请求
    $.ajax({
      type: 'get',
      url: 'http://localhost:8080/api/v1/admin/user/info',
      // 利用请求头属性来携带token
      // 问题: 以下这段代码要写几次? 21次!!!!!
      // headers: {
      //     'Authorization': localStorage.getItem('token')
      // },
      success: function (backData) {
        // console.log(backData)
        if (backData.code == 200) {
          // 2. 将返回的数据渲染到结构中
          $('.user_info span').html(`欢迎&nbsp;&nbsp;${backData.data.nickname}`)
          $('.user_info img, .user_center_link img').attr(
            'src',
            backData.data.userPic
          )
        }
      },
      error: function (xhr, status, err) {
        // console.log(xhr);// 网络请求对象
        // console.log(status);// 网络当前的状态
        // console.log(err);// 当前的错误信息Forbidden
        // 判断当前是否被禁止访问
        if (err == 'Forbidden') {
          alert('禁止非法登录！请重新登录！')
          window.location = 'login.html'
        }
      }
    })
    // 3. 当点击退出按钮的时候,应该发生什么事情
    // 提示删除成功,并跳转回登录页面
    $('.logout').on('click', function (e) {
      // 将本地的token删除
      localStorage.removeItem('token')
      alert('当前用户退出成功！')
      window.location = './login.html'
    })

    // 4. 给所有一级菜单设置点击事件
    $('.level01').on('click', function (e) {
      // 5. 当前按钮设置高亮,移除其他兄弟元素
      $(this)
        .addClass('active')
        .siblings('.level01')
        .removeClass('active')

      // 6. 判断是否点击了文章管理按钮
      if ($(this).index() == 1) {
        // 7. 切换二级菜单的显示/隐藏
        $('.level02').slideToggle()

        // 8. 给箭头标签设置动画
        $('.icon-arrowdownl').toggleClass('rotate0')
      } else {
        $('.level02').slideUp()
        $('.icon-arrowdownl').removeClass('rotate0')
      }
    })

    // 9. 给二级菜单设置点击事件
    $('.level02 li').on('click', function (e) {
      $(this)
        .addClass('active')
        .siblings()
        .removeClass('active')
    })
  })
</script>
